It is becoming increasingly important for organizations to keep their personnel highly trained in state-of-the-art technologies. However, it is also expensive to provide such training. In particular, there are expenses for trainers and materials as well as travel expenses for either (or both) trainers and trainees. To alleviate some of these expenses, automated learning or tutorial systems have been developed. However, such systems may provide minimal user (i.e., trainee) interaction or, if highly interactive, may require substantial hardware and/or software expenditures for "training centers." Further, there may still remain substantial travel expenditures for organization personnel utilizing such a training center.
The above-described scenario is particularly true for training in software development technologies. In particular, some of the most effective software development concepts and techniques, such as used in object-oriented software development, have been slow to be fully utilized due to a significant overhead in (re)training software developers in the use of object-oriented technologies.
Accordingly, it would be advantageous to have a highly interactive tutorial system for teaching or tutoring users regarding object-oriented software design and development that both reduces the need for trainers and is readily accessible by users via mass produced, low cost components, wherein users may be tutored from their normal place of work.